package collection.guavaoperator;

import com.google.common.collect.Maps;
import java.util.HashMap;
import java.util.Map;
import org.testng.annotations.Test;

public class MapUtil {

    /**
     * 根据值过滤map
     */
    @Test
    public void t1() {
        HashMap map = new HashMap<Integer, Integer>();
        map.put(1, 1);
        map.put(2, 0);
        map.put(3, 3);
        map.put(0, 9);
        map.put(4, 0);

        System.out.println(map);
//        Map filterValues = Maps.filterValues(map, v -> v != 0);
//        System.out.println(filterValues);

    }

    /**
     * 根据键过滤map
     */
    @Test
    public void t2() {
        var map = new HashMap<Integer, Integer>();
        map.put(1, 1);
        map.put(2, 0);
        map.put(3, 3);
        map.put(0, 9);
        map.put(4, 0);

        System.out.println(map);
        var filterValues = Maps.filterKeys(map, v -> v / 2 == 0);
        System.out.println(filterValues);
    }
}
